
function movea() {
    console.log('我是A，我已经移动到B的位置了哦');
    moveb(function (value) {
        movec(function (value) {
            moved();
        })
    })
}

function moveb(callback) {
    console.log('我是B，我已经移动到C的位置了哦');

    callback();
}

function movec(callback) {
    console.log('我是C，我已经移动到D的位置了哦');

    callback();
}

function moved() {
    console.log('我是D，我已经移动完毕');
}



async function movea() {
    await moveb()
    await movec()
    await moved()
}

function movea(){
    return new Promise((res,rej)=>{
        console.log('我是A，我已经移动到B的位置了哦');
    }).then(()=>{
        moveb()
    }).then(()=>{
        movec()
    }).then(()=>{
        moved()
    })
}